package com.learn.core.domain;

import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import com.fasterxml.jackson.annotation.JsonInclude;
import com.learn.core.domain.view.UserDetailsGather;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;

import java.io.Serializable;
import java.util.Date;

/**
 * Description
 *
 * @author zhaohongyu
 * @ClassName LEvaluate
 * @date 2021.04.08 10:12
 * @describe 评价实体类
 */
@TableName("l_evaluate")
@JsonInclude(JsonInclude.Include.NON_NULL)
@ApiModel(value="LEvaluate对象", description="评价")
public class LEvaluate implements Serializable {
    private static final long serialVersionUID = 1L;

    @TableId(value = "evaluate_id", type = IdType.AUTO)
    private Integer evaluateId;

    @ApiModelProperty(value = "评价内容")
    @TableField("evaluate_content")
    private String evaluateContent;

    @ApiModelProperty(value = "评价状态 1好评 2中评 3差评")
    @TableField("evaluate_type")
    private String evaluateType;

    @ApiModelProperty(value = "课程id")
    @TableField("course_id")
    private Integer courseId;

    @ApiModelProperty(value = "评价人id")
    @TableField("user_id")
    private Integer userId;

    @TableField(exist = false)
    private UserDetailsGather user;

    @ApiModelProperty(value = "点赞")
    @TableField("evaluate_praise")
    private Integer evaluatePraise;

    @TableField(exist = false)
    private String praiseState;

    @TableField("create_time")
    private Date createTime;

    @TableField("create_user")
    private String createUser;

    @TableField("update_time")
    private Date updateTime;

    @TableField("update_user")
    private String updateUser;

    public String getPraiseState() {
        return praiseState;
    }

    public void setPraiseState(String praiseState) {
        this.praiseState = praiseState;
    }

    public UserDetailsGather getUser() {
        return user;
    }

    public void setUser(UserDetailsGather user) {
        this.user = user;
    }

    public Integer getEvaluateId() {
        return evaluateId;
    }

    public void setEvaluateId(Integer evaluateId) {
        this.evaluateId = evaluateId;
    }

    public String getEvaluateContent() {
        return evaluateContent;
    }

    public void setEvaluateContent(String evaluateContent) {
        this.evaluateContent = evaluateContent;
    }

    public String getEvaluateType() {
        return evaluateType;
    }

    public void setEvaluateType(String evaluateType) {
        this.evaluateType = evaluateType;
    }

    public Integer getCourseId() {
        return courseId;
    }

    public void setCourseId(Integer courseId) {
        this.courseId = courseId;
    }

    public Integer getUserId() {
        return userId;
    }

    public void setUserId(Integer userId) {
        this.userId = userId;
    }

    public Integer getEvaluatePraise() {
        return evaluatePraise;
    }

    public void setEvaluatePraise(Integer evaluatePraise) {
        this.evaluatePraise = evaluatePraise;
    }

    public Date getCreateTime() {
        return createTime;
    }

    public void setCreateTime(Date createTime) {
        this.createTime = createTime;
    }

    public String getCreateUser() {
        return createUser;
    }

    public void setCreateUser(String createUser) {
        this.createUser = createUser;
    }

    public Date getUpdateTime() {
        return updateTime;
    }

    public void setUpdateTime(Date updateTime) {
        this.updateTime = updateTime;
    }

    public String getUpdateUser() {
        return updateUser;
    }

    public void setUpdateUser(String updateUser) {
        this.updateUser = updateUser;
    }
}
